+Fri Dec 12 00:05:31 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkrange.c (gtk_range_scroll): Fix direction of
+ steppers in inverted scrollbars. (#129084, Olexiy Avramchenko)
+
Thu Dec 11 23:50:30 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't
+Fri Dec 12 00:05:31 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkrange.c (gtk_range_scroll): Fix direction of
+ steppers in inverted scrollbars. (#129084, Olexiy Avramchenko)
+
Thu Dec 11 23:50:30 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't
+Fri Dec 12 00:05:31 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkrange.c (gtk_range_scroll): Fix direction of
+ steppers in inverted scrollbars. (#129084, Olexiy Avramchenko)
+
Thu Dec 11 23:50:30 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't
+Fri Dec 12 00:05:31 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkrange.c (gtk_range_scroll): Fix direction of
+ steppers in inverted scrollbars. (#129084, Olexiy Avramchenko)
+
Thu Dec 11 23:50:30 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't
+Fri Dec 12 00:05:31 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkrange.c (gtk_range_scroll): Fix direction of
+ steppers in inverted scrollbars. (#129084, Olexiy Avramchenko)
+
Thu Dec 11 23:50:30 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't
gdouble newval;
newval = range->adjustment->value + range->adjustment->step_increment;
-
gtk_range_internal_set_value (range, newval);
}
gdouble newval;
newval = range->adjustment->value + range->adjustment->page_increment;
+ gtk_range_internal_set_value (range, newval);
+}
+
+static void
+scroll_begin (GtkRange *range)
+{
+ gtk_range_internal_set_value (range, range->adjustment->lower);
+}
+
+static void
+scroll_end (GtkRange *range)
+{
+ gdouble newval;
+ newval = range->adjustment->upper - range->adjustment->page_size;
gtk_range_internal_set_value (range, newval);
}
break;
case GTK_SCROLL_STEP_BACKWARD:
- step_back (range);
+ if (should_invert (range))
+ step_forward (range);
+ else
+ step_back (range);
break;
case GTK_SCROLL_STEP_FORWARD:
- step_forward (range);
+ if (should_invert (range))
+ step_back (range);
+ else
+ step_forward (range);
break;
case GTK_SCROLL_PAGE_LEFT:
break;
case GTK_SCROLL_PAGE_BACKWARD:
- page_back (range);
+ if (should_invert (range))
+ page_forward (range);
+ else
+ page_back (range);
break;
case GTK_SCROLL_PAGE_FORWARD:
- page_forward (range);
+ if (should_invert (range))
+ page_back (range);
+ else
+ page_forward (range);
break;
case GTK_SCROLL_START:
- gtk_range_internal_set_value (range,
- range->adjustment->lower);
+ if (should_invert (range))
+ scroll_end (range);
+ else
+ scroll_begin (range);
break;
case GTK_SCROLL_END:
- gtk_range_internal_set_value (range,
- range->adjustment->upper - range->adjustment->page_size);
+ if (should_invert (range))
+ scroll_begin (range);
+ else
+ scroll_end (range);
break;
case GTK_SCROLL_JUMP: